import axios from 'axios';
import rr from '../router';
//import {useUserStore} from '../stores/userStore.js';

const _axios = axios.create({});
//发请求到后台的时候，要拦截，就在这里填代码
// _axios.interceptors.request.use(config => {
//     return config;
// });
//请求回来之后，要拦截，就在这里填代码

_axios.interceptors.response.use(
    function(response){
        switch(response.data.state){
            case 2000:return response;
            case 4001:alert(response.data.msg);
                      sessionStorage.removeItem('curUser');
                      let store=useUserStore();
                      store.clearUser();
                      rr.push('/login');
                      break;
            case 4000:alert("参数异常"+response.data.msg);break;
            case 5000:alert("服务器后端异常,请联系管理员"+response.data.msg);break;
            default:alert(response.data.msg);break;
        }
        return Promise.reject(response);
    },
    function(error){
        switch(error.response.status){
            case 404:alert("服务器连接不上，请稍后再试");break;
            case 401:alert("服务器要求认证");break;
            case 405:alert("请求方式不对,请与开发公司联系");break;
            case 500:alert("服务器端错误");break;
            default:alert(error);break;
         }
        return Promise.reject(error);
    }
   
);

export default _axios;

